#ifndef __WEBPAGE_H__
#define __WEBPAGE_H__

#include <string>
#include <unordered_map>
#include <vector>

using std::string;
using std::vector;
using std::unordered_map;
class WebPage
{
public:
    WebPage()=default;
    WebPage(string doc);
    
    ~WebPage();

    // 获取文章的id
    int getDoiId();

    // 获取文章的标题
    string getTitle();

    // 获取文章的链接
    string getDocUrl();

    // 获取文章的摘要
    string getSummary(const vector<string> &queryWords);

    // 获取文章的词频统计map
    unordered_map<string,int> getWordMap();

    // 对格式化文章进行处理
    void processDoc();

    // 统计词频最高的二十个单词
    void countTopK();


private:
    string _doc;                         // 文档全部内容
    int _docId;                          // 文档ID
    string _docTitle;                    // 文档标题
    string _docUrl;                      // 文档链接
    string _docContent;                  // 文档内容
    string _docSummary;                  // 文档摘要
    vector<string> _topWords;            // 词频最高的前20个词
    unordered_map<string,int> _wordsMap; // 保存每篇文档的所有词语和词频
}; 

#endif